package com.jprocms.module.cms.controller.admin.content.vo;


import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.List;

/**
 * 内容扩展 Base VO，提供给添加、修改、详细的子 VO 使用
 * 如果子 VO 存在差异的字段，请不要添加到这里，影响 Swagger 文档生成
 */
@Data
public class ContentExtBaseVO {

    @Schema(description = "预约发布时间")
    private Date onlineTime;

    @Schema(description = "下线时间")
    private Date offlineTime;

    @Schema(description = "置顶开始时间")
    private Date topStartTime;

    @Schema(description = "置顶结束时间")
    private Date topEndTime;

    @Schema(description = "副标题")
    private String subtitle;

    @Schema(description = "外部链接地址")
    private String outLink;

    @Schema(description = "是否新窗口打开", required = true)
    @NotNull(message = "是否新窗口打开不能为空")
    private Boolean targetBlank;

    @Schema(description = "摘要")
    private String description;

    @Schema(description = "作者")
    private String author;

    @Schema(description = "来源")
    private String source;

    @Schema(description = "系统图片")
    private String sysImage;

    @Schema(description = "系统视频")
    private String sysVideo;

    @Schema(description = "视频时长")
    private Integer sysVideoDuration;

    @Schema(description = "系统音频")
    private String sysAudio;

    @Schema(description = "系统附件")
    private String sysAttach;

    @Schema(description = "文库")
    private String docPdf;

    @Schema(description = "文库原始文档")
    private String originDoc;

    @Schema(description = "pc模板")
    private String pcTpl;

    @Schema(description = "h5模板")
    private String h5Tpl;

    @Schema(description = "流程实例ID")
    private String processInstanceId;

    @Schema(description = "退回原因")
    private String rejectReason;

    @Schema(description = "系统默认正文")
    private String text;

    @Schema(description = "图片集JSON")
    private List<ContentImageVo> images;

    @Schema(description = "文件集JSON")
    private List<ContentFileVo> attachs;

    @Schema(description = "编辑器类型(1:wangeditor富文本编辑器,2:tinymce编辑器)")
    private Integer editorType = 1;

    @Schema(description = "搜索权重")
    private Integer searchWeight = 0;

}
